当前位置:flash课件吧→免费FLASH教程之三(含实例教程)新页面 新改版 新气象

题 目:Flash中如何通过按钮在本地打开视频

大家的问题的意思大概是:在本地,怎样在Flash里通过点一个按钮,用视频播放器打开一段视频(如RM电影)这里涉及三个程式:Flash,视频播放器.然后,由于Flash无法直接把文档名的数据传给播放器,所以还需要一个中间的程式来通信(笔者用VB写了一个).

  接下来会把教程写给大家.

  工作原理:

  在MX或以上版本里,能够通过fscommand调用一个应用程式,但是,由于安全性的问题,fscommand的exec命令中,调用的应用程式不能够带有命令行参数,对于命令行参数,可能有些人不是很了解.下面给大家解释一下命令行参数的问题.

  在Flash3~5里,我们能够通过如下办法用GreenMPC.exe程式打开一个文档a.rm

  fscommand("exec","GreenMPC.exe a.rm")

  其中,a.rm成为GreenMPC.exe的命令行参数,flash通过该语句,先打开GreenMPC.exe,再通过命令行参数告诉GreenMPC,要他打开a.rm这个文档.

  所以,在5里头,做这个是很方便的.

  现在普遍都用7或以上版本了.fscommand("exec","GreenMPC.exe a.rm")失效,只能用fscommand("exec","GreenMPC.exe"),而这是达不到目的的,因为他只能打开GreenMPC.exe,而不能用GreenMPC.exe打开a.rm.

  所以,现在最大的问题有两个:

  1 要把a.rm传递出去

  2 要让a.rm这个参数给GreemMPC.exe接收.

  Flash把变量存在于内存里,至少对于大部分Flash设计者来说,在别的程式里是没办法获得的.所以,要尝试把a.rm存到硬盘里.

  然而,在本地,Flash6和7版本都只能把数据存在于SharedObject里,其保存路径很复杂(跟系统,用户名等因素相关),一不小心就会出错,所以,本地的硬盘还是不行.

  那是否就没办法,"山穷水复疑无路"了?

  回过头来想内存,会想到有一块很活泼的区域:剪贴板,Flash能够往剪贴板发送数据,这就"柳暗花明又一村"了!

  第一个问题解决了.下面是第二个问题.

  如何让GreenMPC获取到剪贴板的信息呢?

  Flash是没有能力直接告诉GreenMPC直接获取剪贴板的数据作为命令行参数,因此,我们要通过一个中介.

  笔者用VB写了个程式,获取剪贴板数据,并且把数据以命令行参数的形式交给GreenMPC.exe.

  这样,问题就完全解决了,下面说说具体做法

  下面说说具体做法

  1 因为涉及多个文档,所以第一步先把文档放好.

  1.1 新建一目录,您以后的文档都在此目录里.

  1.2 在该目录下新建一Flash文档.

  1.3 由于6或7的版本都只能调用fscommand目录下的程式,所以,新建一个文档夹fscommand,把播放器和视频文档放进去(注意,在放播放器的时候,跟播放器有关的系统文档都要放进去.

  1.4 放入中间程式,文档在楼顶的压缩包里面的fscommand文档夹下,名为openMovie.exe.

  该程式是笔者用VB写的,里头的代码如下(因为这是讨论Flash的地方,所以不作周详解释,读者有兴趣的话,能够参考跟VB有关的书籍).

  
PrivateSubForm_Load()’子过程,当程式窗体加载时运行

  OnErrorGoToOpenErr’发生错误后,程式结束

  DimFilNamAsString’定义FilNam变量

  IfApp.PrevInstanceThenEnd’为防止运行时出现混乱,所以只允许运行一个实例

  FilNam=Clipboard.GetText’把剪贴板的数据储存在一个名为FilNam的变量里.

  Clipboard.Clear’清空剪贴板

  Shell"GreenMPC.exe"&""""&FilNam&""""’运行GreenMPC.exe,并往把文档名以命令行参数的形式往播放器传递,让播放器打开FilNam.

  OpenErr:

 

  End '程式结束

  2 文档放好了,下面编辑Flash文档

  2.1 新建一个元件Button,是用来打开视频的,

  2.2 在里头添加代码

  
on(release){

  System.setClipboard("a.rm")//这句话用于将文档名的数据传到剪贴板,

  fscommand("exec","openMovie.exe")//剪贴板获得数据后,能够打开openMovie.exe了,让该程式来获取剪贴板数据,传输给GreenMPC.exe

  }

 

  2.3 现在,测试影片,您现在是看不到任何效果的.

  2.4 但是,您现在假如打开记事本,"粘贴"一下,您会发现粘贴出来的是a.rm,可见,剪贴板已从Flash里获得数据了.

  2.5 之后的没有运行,是因为fscommand("exec",args)只能在单独播放器里使用(该观点并不完全正确,假如从更大的范围来讲),调试是没效果的.

  2.6 在单独的播放器(请使用7或以上的版本)里打开生成的Flash,还是没有反应,为什么呢?

  因为安全性,swf不能调用exe,需要exe才能调用exe.因此,在Flash播放时,选择"文档"-"创建播放器",保存个exe文档到当前路径.然后,运行该exe文档,点击按钮,a.rm就被GreenMPC.exe打开了.

  2.7 假如您屏蔽了菜单,那就要在Flash设计模式下生成exe

  "文档"-"发布配置",把"Windows放映文档(*.exe)勾上,按"发布",就能够了.

 

 

 

 

 

期刊论文服务

合作期刊
学报期刊
 
获奖证书办理
本站已改版成新站 课件115学培吧http://www.kj115.com
免费FLASH教程之三(含实例教程)内容导航
为Flash建搜索内容索引 Flash广告播放器研发 Flash引领互动动画潮流 Flash趣味鼠标特效大作战
Flash MX 2004滚动文本框的两种做法 给Flash文件添加历史记录 Flash中的常见术语(详解) 用笛卡尔公式画出的一颗心状图
播放器拖动进度条制作 水滴效果动画,Flash制作中的AS问题 中秋寄相思 自制Flash贺卡 用SWiSHmax轻松制作精彩Flash片头
用autocad制作一个量角器_autocad教程 Flash百叶窗制作教程 Flash制作实用别致的导航菜单 Flash实用技巧之音乐时间显示篇
Flash中的电影艺术之镜头技巧教程
Flash AS游戏教程:人物及控制 PS+FLASH制作马赛克效果 如何在论坛中,链接自已的FLASH动画呢!
FLASH中的抛运动中的竖直上抛运动 鼠标感应花儿转动效果 FLASH效果篇:闪光效果 自己动手制作手机Flash主题动画
晨雾蒙蒙动画效果,Flash制作方法 Flash制作简单MP3播放器 Flash制作滚动广告图片效果 Flash MX动画制作实例教程-文字处理-设置段落属性
电闪雷鸣、小雨纷飞的效果,Flash制作方法 Flash实现用鼠标调整窗口的大小 AS3学习源码--打气球 关于主动画中load动画和动态文本的共同运用问题
关于倒计时程序的准确性解决方法之一 Flash加载外部文件的方法与技巧集合 Tween类:图片缓动浏览效果 FLASH中加载外部音乐代码&部分难找AS教程
Flash与Java Servlet结合实现网上对战 用AS3实再FLASH游戏的上下左右移动 FLASH中加载外部音乐代码 Flash动态文本框中加载HTML格式文本
Flash制作环绕的立体图片效果动画 FLASH CS3中的FLA形式组件制作教程 酷!Flash聊天室的实现 更多相关内容总目录(200个)》》》
国家信息产业部备案专号:鄂ICP08005724返回顶部
本站推荐最佳分辨率:1024X768在线咨询台
声明:我站除课件制作动画制作培训以外,所有内容均属于免费资源。本站部分资源来自于网络,由本站收集整理,如有侵权请联系本站管理(QQ444860709 手机13339817386),我站会在三个工作日内处理。